Momentum - Strategy ScriptBased on the bult-in momentum script, I took the liberty of updating it, adding two features.
First, I would like to see the momentum oscillator showing percentage values, rather than absolute values. Visually facilitating analysis in long-term graphs.
Second, just for fun*.
I don't know how to explain the reason exactly, but for the strategy bult-in script, I didnt like the formula of "mom1" calculation.
So I changed it for a formula that made the most sense to me.
In any case, the original script remains in the code, optionally disabling the "percent" option and selecting the MOM1 option in the "MOM Choice" field, for the purpose of study and comparisons.
The script below is opened for study and any suggestions will be welcome.
I hope it can help the community.
It's just the beginning.
Study only purpose.
I tried to follow the code conventions found in the link below.
www.pinecoders.com
Cerca negli script per "the script"
Altcoin correlation MeterDear TV'ers,
Hereby a script where the relative strength of an (in this case) altcoin is measured. The script produces a correlation between the altcoin and total altcoin market (Total2 index, see script). Using this script you can see when there is a strong correlation between the two and when there isn't. Moreover, it also produces long/short signals using hull moving average crossover.
Long signals are produced when correlation is below 0 and the hma of the pair is higher than the lagging hma.
Short signals are produced when correlation is below 0 and the hma of the pair is lower than the lagging hma.
Short/Long is closed after correlation is going back towards a set correlation target as well as the Take profit percentage is reached.
In the above example the script is applied to one of my favorite altcoin projects (rose).
Looking forward to feedback/suggestions.
Bitlinc MARSI Study AST w/ Take Profit & Stop loss - beta 0.1This script is beta 0.1 - will update as soon as the script is tradable
This script is based on AST on a 10 minute timeframe. You can change the asset and the timeframe for any asset you want to trade, but for it to work correct ALL settings have to be testes in the Strategy section of the TradingView. Each assets and timeframe require a different mixture of settings. This is NOT a one settings fits all trading for all assets on any timeframe. Below are the settings and explanation on how it works.
How it fires a buy / sell:
The script will plot an RSI with upper and lower bands in a separate indicator window. The idea behind this script is to fire a LONG when MA crosses OVER lower band and fire a SHORT when the MA crosses under the lower band. Each order that fires is an OCO (Order Cancels Order) for pyramiding.
Settings:
You have full control of these settings as mentioned above, you must configure every part of this script for each asset and timeframe you trade.
- Length of MA
- Length
- Upper bands of RSI
- Lower bands of RSI
- Take profit percentage
- Stop loss percentage
- Month to start and end the strategy (within 2020)
- Day to start and end the strategy (within 2020)
- Quantity type
- Slippage
- Pyramiding
***Remember that after the signal to enter or exit a trade is fired, the alert will trigger AFTER the close of the candle that caused the tigger to fire
Low Scanner strategy cryptoThis is the last script of the Low scanner series
I have shown in script 1 the best strategy for stocks on 1 hour
script for forex 1 hour (if you look on comments you will find settings which are perfect for low TF (1 min system )
This strategy is the perfect weapen for crypto
no repaint as I shown the scanner do not use security
this system will buy and sell about every 1000 min in the end you will getyour profit which is progressive
set to 1,2,3, and 5 % where each time you take 25% of equaty out
as I shown before the power of the progresive take and my scanner make it best
the scnner serach for low point using my special RSI system with no repaint MTF
every time we get our profit out
the scanner will find us new low to start cycle again
so invite me for coffe if you like this system
thanks to TV that allow donation:)
so this is example of smart strategy that beat the odds
try on major crypto assets (it nice system )
without the script of adolgov
this system was not possible so I would like to thank him very much that he share with us his great script
XPloRR S&P500 Stock Market Crash Detection Strategy v2XPloRR S&P500 Stock Market Crash Detection Strategy v2
Long-Term Trailing-Stop strategy detecting S&P500 Stock Market Crashes/Corrections and showing Volatility as warning signal for upcoming crashes
Detecting or avoiding stock market crashes seems to be the 'Holy Grail' of strategies.
Since none of the strategies that I tested can beat the long term Buy&Hold strategy, the purpose was to detect a stock market crash on the S&P500 and step out in time to minimize losses and beat the Buy&Hold strategy. So beat the Buy&Hold strategy with around 10 trades. 100% capitalize sold trade into new trade.
With the default parameters the strategy generates 10262% profit (starting at 01/01/1962 until release date), with 10 closed trades, 100% profitable, while the Buy&Hold strategy only generates 3633% profit, so this strategy beats the Buy&Hold strategy by 2.82 times !
Also the strategy detects all major S&P500 stock market crashes and corrections since 1962 depending on the Trailing Stop Smoothness parameter, and steps out in time to cut losses and steps in again after the bottom has been reached. The 5 major crashes/corrections of 1987, 1990, 2001, 2008 and 2010 were successfully detected with the default parameters.
The script was first released on November 03 2019 and detected the Corona Crash on March 04 2020 with a Volatility crash-alert and a Sell crash-alert.
I have also created an Alerter Study Script based on the engine of this script, which generates Buy, Sell and Volatility signals.
If you are interested in this Alerter version script, please drop me a mail.
The script shows a lot of graphical information:
the Close value is shown in light-green. When the Close value is temporarily lower than the Buy value, the Close value is shown in light-red. This way it is possible to evaluate the virtual losses during the current trade.
the Trailing Stop value is shown in dark-green. When the Sell value is lower than the Buy value, the last color of the trade will be red (best viewed when zoomed)
the EMA and SMA values for both Buy and Sell signals are shown as colored graphs
the Buy signals are labeled in blue and the Sell signals are labeled in purple
the Volatility is shown below in green and red. The Alert Threshold (red) is default set to 2 (see Volatility Threshold parameter below)
How to use this Strategy?
Select the SPX (S&P500) graph and add this script to the graph.
Look in the strategy tester overview to optimize the values Percent Profitable and Net Profit (using the strategy settings icon, you can increase/decrease the parameters), then keep using these parameters for future Buy/Sell signals on the S&P500.
More trades don't necessarily generate more overall profit. It is important to detect only the major crashes and avoid closing trades on the smaller corrections. Bearing the smaller corrections generates a higher profit.
Watch out for the Volatility Alerts generated at the bottom (red). The Threshold can by changed by the Volatility Threshold parameter (default=2% ATR). In almost all crashes/corrections there is an alert ahead of the crash.
Although the signal doesn't predict the exact timing of the crash/correction, it is a clear warning signal that bearish times are ahead!
The correction in December 2018 was not a major crash but there was already a red Volatility warning alert. If the Volatility Alert repeats the next weeks/months, chances are higher that a bigger crash or correction is near. As can be seen in the graphic, the deeper the crash is, the higher and wider the red Volatility signal goes. So keep an eye on the red flag!
Here are the parameters:
Fast MA Buy: buy trigger when Fast MA Buy crosses over the Slow MA Buy value (use values between 10-20)
Slow MA Buy: buy trigger when Fast MA Buy crosses over the Slow MA Buy value (use values between 21-50)
Minimum Buy Strength: minimum upward trend value of the Fast MA Buy value (directional coefficient)(use values between 10-100)
Fast MA Sell: sell trigger when Fast MA Sell crosses under the Slow MA Sell value (use values between 10-20)
Slow MA Sell: sell trigger when Fast MA Sell crosses under the Slow MA Sell value (use values between 21-50)
Minimum Sell Strength: minimum downward trend value of the Fast MA Sell value (directional coefficient)(use values between 10-100)
Trailing Stop ATR: trailing stop % distance from the smoothed Close value (use values between 2-20)
Trailing Stop Smoothness: MA value for smoothing out the Trailing Stop close value
Buy On Start Date: force Buy on start date even without Buy signal (default: true)
Sell On End Date: force Sell on end date even without Sell signal (default: true)
Volatility EMA Period: MA value of the Volatility value (default 15)
Volatility Threshold: Threshold value to change volatility graph to red (default 2)
Volatility Graph Scaler: Scaling of the volatility graph (default 5)
Important : optimizing and using these parameters is no guarantee for future winning trades!
Strategy VS Buy & HoldSUMMARY:
A strategy wrapper that makes a detailed and visual comparison between a given strategy and the buy & hold returns of the traded security.
DESCRIPTION:
TradingView has a "Buy & Hold Return" metric in the strategy tester that is often enough to assess how our strategy compares to a simple buy hold. However, one may want more information on how and when your strategy beats or is beaten by a simple buy & hold strategy. This script aims to show such detail by providing a more comprehensive metrics and charting the profit/loss of the given strategy against buy & hold.
As seen in the script, it plots/draws 4 elements:
1) Strategy P/L: strategy net profit + strategy open profit
2) Buy & Hold P/L: unrealized return
3) Difference: Strategy P/L - Buy & Hold P/L
4) Strategy vs Buy Hold Stats
> Percent of bars strategy P/L is above Buy & Hold
> Percent of bars strategy P/L is below Buy & Hold
> All Time Average Difference
ADJUSTABLE PARAMETERS:
All labels/panels can be disabled by unchecking these two options:
>bnh_info_panel = input(true, title='Enable Info Panel')
>bnh_indicator_panel = input(true, title='Enable Indicator Panel')
Comparison Date Range can be changed to better isolate specific areas:
>From Year, From Month, From Day
default: 1970 01 01
>To Year, To Month, To Day
default: 2050 12 31
Default settings basically covers all historical data.
HOW TO USE:
The default script contains a simple 50-200 SMA cross strategy, just delete and replace it. Those are everything between these lines:
/////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////STRATEGY SCRIPT START//////////////////////////////////
(STRATEGY SCRIPT GOES HERE)
//////////////////////////////STRATEGY SCRIPT END////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
Removing all plots and drawings from your strategy is advisable.
If you are going to use the Comparison Date Range, apply "bnh_timeCond" to your strategy to align the dates. A sample on how it’s applied can be seen on the Placeholder MA cross strategy.
Note: bnh_timeCond returns a boolean series
TradingView Alerts to MT4 MT5 + dynamic variables NON-REPAINTINGAccidentally, I’m sharing open-source profitable Forex strategy. Accidentally, because this was aimed to be purely educational material. A few days ago TradingView released a very powerful feature of dynamic values from PineScript now being allowed to be passed in Alerts. And thanks to TradingConnector, they could be instantly executed in MT4 or MT5 platform of any broker in the world. So yeah - TradingConnector works with indices and commodities, too.
The logic of this EURUSD 6h strategy is very simple - it is based on Stochastic crossovers with stop-loss set under most recent pivot point. Setting stop-loss with surgical precision is possible exactly thanks to allowance of dynamic values in alerts. TradingConnector has been also upgraded to take advantage of these dynamic values and it now enables executing trades with pre-calculated stop-loss, take-profit, as well as stop and limit orders.
Another fresh feature of TradingConnector, is closing positions only partly - provided that the broker allows it, of course. A position needs to have trade_id specified at entry, referred to in further alerts with partial closing. Detailed spec of alerts syntax and functionalities can be found at TradingConnector website. How to include dynamic variables in alert messages can be seen at the very end of the script in alertcondition() calls.
The strategy also takes commission into consideration.
Slippage is intentionally left at 0. Due to shorter than 1 second delivery time of TradingConnector, slippage is practically non-existing. This can be achieved especially if you’re using VPS server, hosted in the same datacenter as your brokers’ servers. I am using such setup, it is doable. Small slippage and spread is already included in commission value.
This strategy is NON-REPAINTING and uses NO TRAILING-STOP or any other feature known to be faulty in TradingView backtester. Does it make this strategy bulletproof and 100% success-guaranteed? Hell no! Remember the no.1 rule of backtesting - no matter how profitable and good looking a script is, it only tells about the past. There is zero guarantee the same strategy will get similar results in the future.
To turn this script into study so that alerts can be produced, do 2 things:
1. comment “strategy” line at the beginning and uncomment “study” line
2. comment lines 54-59 and uncomment lines 62-65.
Then add script to the chart and configure alerts.
This script was build for educational purposes only.
Certainly this is not financial advice. Anybody using this script or any of its parts in any way, must be aware of high risks connected with trading.
Thanks @LucF and @a.tesla2018 for helping me with code fixes :)
[M10] MA Squeeze Funding Trader [Backtest]Hey all,
My latest script combines a few indicators together in order to create a powerful, more reliable automation of trading based on short-term Trend direction and BixMex Funding with various filters, including three Moving Averages, Keltner Channels and Bollinger Bands.
This script will buy/sell based on the current trend determined by three customisable moving averages, with the option to apply the following filters:
Moving Average Filter: Will only buy/sell once the price overextends above/below moving averages, with reversal likely.
BitMex Funding: Will only buy/sell based on BitMex's current funding. The price is often found to trend with funding.
Squeeze Indicator: A combination of Keltner Channels and Bollinger Bands find areas with stable price movement for optimal entry points.
The script will exit a position upon a reversal signal from the three moving averages.
This script appears to work very well in ranging markets, however will not always perform so well in trending markets. Applying the squeeze and funding filters will reduce the frequency at which positions are entered, however has proven powerful in preventing losing trades.
I have also created an alerts version of this script available at no cost on my page - enjoy!
Any questions? Let me know!
[M10] Quad MA Trend ScalperFour adjustable moving averages set in order to produce buy and sell signals, works best on smaller timeframes from my backtesting, 10M - 30M seems optimal for scalping.
The idea behind this script is to only enter positions that are following the trend in order to minimise drawdown and decrease risk when using leverage.
The script will only enter long positions when MA crossover occurs above the Long MA 2.
The script will exit a long position when MA Short crosses below Long MA 1.
The script will only enter short positions when MA cross under occurs below the Long MA 2.
The script will exit a short position when MA Short crosses below Long MA 1.
CS Basic Script - Customizable Crossing Moving AveragesThis Crossing MA Script features inputs for:
- Custom Date Range for Backtesting
- Optional Trailing Stop Loss
- Buy/Sell and Long/Short Selections
- Customizable MA Types and Ranges
- Includes EMA, SMA, WMA, ALMA, VMA, HMA, and LSMA Moving Average Types
- Ability to Enable Automated Trading with the Autoview Trading Bot Chrome Extension
For access to the Strategy Script for backtesting, simply favorite the script and add it to any TradingView chart.
For access to the Study Script for Custom Alerts and the Ability to Automize Trades through Autoview, please visit our website at www.cryptoscores.org .
Gunbot Deluxe Tuners BERevision 18
Gunbot Deluxe Tuners BE (Black Edition) is the official Gunthy version of Gunbot Deluxe Tuners.
It is an all in one script simulation of Gunbot with the ability to optimize Gunbot settings through backtesting any combination of the script's included buy / sell strategies along with extra conditions and trailing options.
The companion script allows user to automatically send alerts directly to Gunbot through the Gunbot TradingView add-on.
Available only to verified Gunbot owners. No exceptions. Anyone interested in obtaining this script must contact either their official Gunbot reseller or me privately.
No public requests or donations for access to this script will be granted. No exceptions.
NOTICE: By requesting access to this script you acknowledge that you have read and understood that this is for research purposes only and neither I or Gunthy are responsible for any financial losses you may incur by using this script!
TradeSpot Pro || Accompanying Strategy indicatorTradeSpot Pro
Overview
This script is an accompaniment to the existing TradeSpot Pro || All Purpose Advanced Trading Indicator
This script is for swing trading with longs, primarily on Binance / Kucoin / Coinbase and other crypto exchanes but is not limited to those markets. The details of what logic is behind the script can be found on the indicator version linked above.
Bags? This script has been tweaked and modified to completely destroy bear markets despite being focused on longs, see the BTCUSD image or PM me for any chart of your liking. I dislike indicators that show an amazing looking run in a bull market but in bear markets they fall apart - well with TradeSpot Pro that is not the case, it is completely market agnostic
Access
For details of access please join the TradeSpot community server where we can sort you out: discord.gg
Alternatively PM me if you would like to directly purchase the strategy and paired indicator.
Euro/Dollar StrengthHey all,
I have been using this strategy for a while, just like my last script (XAG/USD Spread) this utilizes my 'holy grail' method of basket weighting (aka why the script is protected).
This script just looks for periods of time when the euro is gaining against a basket of currencies and the USD is losing vs the basket (and vice versa)
I use this script on the 4H time frame; although I can make this script work for almost any currency pair and time frame I have the most success with EURUSD 4H.
I personally use 3 of these 'strength meters' in triangular arbitrage for EU UJ and EJ
if I get good feedback and support I may publish the other 2 of the 'triangle' or even make a version that automatically detects the currency pair and adjusts settings accordingly.
Thanks for the feedback and support, hope this helps!
Snoop
[Kpt-Ahab] Simple AlgoPilot Riskmgt and Backtest Simple AlgoPilot Riskmgt and Backtest
This script provides a compact solution for automated risk management and backtesting within TradingView.
It offers the following core functionalities:
Risk Management:
The system integrates various risk limitation mechanisms:
Percentage-based or trailing stop-loss
Maximum losing streak limitation
Maximum drawdown limitation relative to account equity
Flexible position sizing control (based on equity, fixed size, or contracts)
Dynamic repurchasing of positions ("Repurchase") during losses with adjustable size scaling
Supports multi-stage take-profit targets (TP1/TP2) and automatic stop-loss adjustment to breakeven
External Signal Processing for Backtesting:
In addition to its own moving average crossovers, the script can process external trading signals:
External signals are received via a source input variable (e.g., from other indicators or signal generators)
Positive values (+1) trigger long positions, negative values (–1) trigger short positions
This allows for easy integration of other indicator-based strategies into backtests
Additional Backtesting Features:
Selection between different MA types (SMA, EMA, WMA, VWMA, HMA)
Flexible time filtering (trade only within defined start and end dates)
Simulation of commission costs, slippage, and leverage
Optional alert functions for moving average crossovers
Visualization of liquidation prices and portfolio development in an integrated table
Note: This script is primarily intended for strategic backtesting and risk setting optimization.
Real-time applications should be tested with caution. All order executions, alerts, and risk calculations are purely simulation-based.
Explanation of Calculations and Logics:
1. Risk Management and Position Sizing:
The position size is calculated based on the user’s choice using three possible methods:
Percentage of Equity:
The position size is a defined fraction of the available capital, dynamically adjusted based on market price (riskPerc / close).
Fixed Size (in currency): The user defines a fixed monetary amount to be used per trade.
Contracts: A fixed number of contracts is traded regardless of the current price.
Leverage: The selected leverage multiplies the position size for margin calculations.
2. Trade Logic and Signal Triggering:
Trades can be triggered through two mechanisms:
Internal Signals:
When a fast moving average crosses above or below a slower moving average (ta.crossover, ta.crossunder). The type of moving averages (SMA, EMA, WMA, VWMA, HMA) can be freely selected.
External Signals:
Signals from other indicators can be received via an input source field.
+1 triggers a long entry, –1 triggers a short entry.
Position Management:
Once entered, the position is actively managed.
Multiple take-profit targets are set.
Upon reaching a profit target, the stop-loss can optionally be moved to breakeven.
3. Stop-Loss and Take-Profit Logic:
Stop-Loss Types:
Fixed Percentage Stop:
A fixed distance below/above the entry price.
Trailing Stop:
Dynamically adjusts as the trade moves into profit.
Fast Trailing Stop:
A more aggressive variant of trailing that reacts quicker to price changes.
Take-Profit Management:
Two take-profit targets (TP1 and TP2) are supported, allowing partial exits at different stages.
Remaining positions can either reach the second target or be closed by the stop-loss.
4. Repurchase Strategy ("Scaling In" on Losses):
If a position reaches a specified loss threshold (e.g., –15%), an automatic additional purchase can occur.
The position size is increased by a configurable percentage.
Repurchases happen only if an initial position is already open.
5. Backtesting Control and Filters:
Time Filters:
A trading period can be defined (start and end date).
All trades outside the selected period are ignored.
Risk Filters: Trading is paused if:
A maximum losing streak is reached.
A maximum allowed drawdown is exceeded.
6. Liquidation Calculation (Simulation Only):
The script simulates liquidation prices based on the account balance and position size.
Liquidation lines are drawn on the chart to better visualize potential risk exposure.
This is purely a visual aid — no real broker-side liquidation is performed.
Prop Firm Business SimulatorThe prop firm business simulator is exactly what it sounds like. It's a plug and play tool to test out any tradingview strategy and simulate hypothetical performance on CFD Prop Firms.
Now what is a modern day CFD Prop Firm?
These companies sell simulated trading challenges for a challenge fee. If you complete the challenge you get access to simulated capital and you get a portion of the profits you make on those accounts payed out.
I've included some popular firms in the code as presets so it's easy to simulate them. Take into account that this info will likely be out of date soon as these prices and challenge conditions change.
Also, this tool will never be able to 100% simulate prop firm conditions and all their rules. All I aim to do with this tool is provide estimations.
Now why is this tool helpful?
Most traders on here want to turn their passion into their full-time career, prop firms have lately been the buzz in the trading community and market themselves as a faster way to reach that goal.
While this all sounds great on paper, it is sometimes hard to estimate how much money you will have to burn on challenge fees and set realistic monthly payout expectations for yourself and your trading. This is where this tool comes in.
I've specifically developed this for traders that want to treat prop firms as a business. And as a business you want to know your monthly costs and income depending on the trading strategy and prop firm challenge you are using.
How to use this tool
It's quite simple you remove the top part of the script and replace it with your own strategy. Make sure it's written in same version of pinescript before you do that.
//--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$--//--------------------------------------------------------------------------------------------------------------------------$$$$$$
//--$$$$$--Strategy-- --$$$$$$--// ******************************************************************************************************************************
//--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$--//--------------------------------------------------------------------------------------------------------------------------$$$$$$
length = input.int(20, minval=1, group="Keltner Channel Breakout")
mult = input(2.0, "Multiplier", group="Keltner Channel Breakout")
src = input(close, title="Source", group="Keltner Channel Breakout")
exp = input(true, "Use Exponential MA", display = display.data_window, group="Keltner Channel Breakout")
BandsStyle = input.string("Average True Range", options = , title="Bands Style", display = display.data_window, group="Keltner Channel Breakout")
atrlength = input(10, "ATR Length", display = display.data_window, group="Keltner Channel Breakout")
esma(source, length)=>
s = ta.sma(source, length)
e = ta.ema(source, length)
exp ? e : s
ma = esma(src, length)
rangema = BandsStyle == "True Range" ? ta.tr(true) : BandsStyle == "Average True Range" ? ta.atr(atrlength) : ta.rma(high - low, length)
upper = ma + rangema * mult
lower = ma - rangema * mult
//--Graphical Display--// *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-$$$$$$
u = plot(upper, color=#2962FF, title="Upper", force_overlay=true)
plot(ma, color=#2962FF, title="Basis", force_overlay=true)
l = plot(lower, color=#2962FF, title="Lower", force_overlay=true)
fill(u, l, color=color.rgb(33, 150, 243, 95), title="Background")
//--Risk Management--// *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-$$$$$$
riskPerTradePerc = input.float(1, title="Risk per trade (%)", group="Keltner Channel Breakout")
le = high>upper ? false : true
se = lowlower
strategy.entry('PivRevLE', strategy.long, comment = 'PivRevLE', stop = upper, qty=riskToLots)
if se and upper>lower
strategy.entry('PivRevSE', strategy.short, comment = 'PivRevSE', stop = lower, qty=riskToLots)
The tool will then use the strategy equity of your own strategy and use this to simulat prop firms. Since these CFD prop firms work with different phases and payouts the indicator will simulate the gains until target or max drawdown / daily drawdown limit gets reached. If it reaches target it will go to the next phase and keep on doing that until it fails a challenge.
If in one of the phases there is a reward for completing, like a payout, refund, extra it will add this to the gains.
If you fail the challenge by reaching max drawdown or daily drawdown limit it will substract the challenge fee from the gains.
These gains are then visualised in the calendar so you can get an idea of yearly / monthly gains of the backtest. Remember, it is just a backtest so no guarantees of future income.
The bottom pane (non-overlay) is visualising the performance of the backtest during the phases. This way u can check if it is realistic. For instance if it only takes 1 bar on chart to reach target you are probably risking more than the firm wants you to risk. Also, it becomes much less clear if daily drawdown got hit in those high risk strategies, the results will be less accurate.
The daily drawdown limit get's reset every time there is a new dayofweek on chart.
If you set your prop firm preset setting to "'custom" the settings below that are applied as your prop firm settings. Otherwise it will use one of the template by default it's FTMO 100K.
The strategy I'm using as an example in this script is a simple Keltner Channel breakout strategy. I'm using a 0.05% commission per trade as that is what I found most common on crypto exchanges and it's close to the commissions+spread you get on a cfd prop firm. I'm targeting a 1% risk per trade in the backtest to try and stay within prop firm boundaries of max 1% risk per trade.
Lastly, the original yearly and monthly performance table was developed by Quantnomad and I've build ontop of that code. Here's a link to the original publication:
That's everything for now, hope this indicator helps people visualise the potential of prop firms better or to understand that they are not a good fit for their current financial situation.
BTC Trading RobotOverview
This Pine Script strategy is designed for trading Bitcoin (BTC) by placing pending orders (BuyStop and SellStop) based on local price extremes. The script also implements a trailing stop mechanism to protect profits once a position becomes sufficiently profitable.
________________________________________
Inputs and Parameter Setup
1. Trading Profile:
o The strategy is set up specifically for BTC trading.
o The systemType input is set to 1, which means the strategy will calculate trade parameters using the BTC-specific inputs.
2. Common Trading Inputs:
o Risk Parameters: Although RiskPercent is defined, its actual use (e.g., for position sizing) isn’t implemented in this version.
o Trading Hours Filter:
SHInput and EHInput let you restrict trading to a specific hour range. If these are set (non-zero), orders will only be placed during the allowed hours.
3. BTC-Specific Inputs:
o Take Profit (TP) and Stop Loss (SL) Percentages:
TPasPctBTC and SLasPctBTC are used to determine the TP and SL levels as a percentage of the current price.
o Trailing Stop Parameters:
TSLasPctofTPBTC and TSLTgrasPctofTPBTC determine when and by how much a trailing stop is applied, again as percentages of the TP.
4. Other Parameters:
o BarsN is used to define the window (number of bars) over which the local high and low are calculated.
o OrderDistPoints acts as a buffer to prevent the entry orders from being triggered too early.
________________________________________
Trade Parameter Calculation
• Price Reference:
o The strategy uses the current closing price as the reference for calculations.
• Calculation of TP and SL Levels:
o If the systemType is set to BTC (value 1), then:
Take Profit Points (Tppoints) are calculated by multiplying the current price by TPasPctBTC.
Stop Loss Points (Slpoints) are calculated similarly using SLasPctBTC.
A buffer (OrderDistPoints) is set to half of the take profit points.
Trailing Stop Levels:
TslPoints is calculated as a fraction of the TP (using TSLTgrasPctofTPBTC).
TslTriggerPoints is similarly determined, which sets the profit level at which the trailing stop will start to activate.
________________________________________
Time Filtering
• Session Control:
o The current hour is compared against SHInput (start hour) and EHInput (end hour).
o If the current time falls outside the allowed window, the script will not place any new orders.
________________________________________
Entry Orders
• Local Price Extremes:
o The strategy calculates a local high and local low using a window of BarsN * 2 + 1 bars.
• Placing Stop Orders:
o BuyStop Order:
A long entry is triggered if the current price is less than the local high minus the order distance buffer.
The BuyStop order is set to trigger at the level of the local high.
o SellStop Order:
A short entry is triggered if the current price is greater than the local low plus the order distance buffer.
The SellStop order is set to trigger at the level of the local low.
Note: Orders are only placed if there is no current open position and if the session conditions are met.
________________________________________
Trailing Stop Logic
Once a position is open, the strategy monitors profit levels to protect gains:
• For Long Positions:
o The script calculates the profit as the difference between the current price and the average entry price.
o If this profit exceeds the TslTriggerPoints threshold, a trailing stop is applied by placing an exit order.
o The stop price is set at a distance below the current price, while a limit (profit target) is also defined.
• For Short Positions:
o The profit is calculated as the difference between the average entry price and the current price.
o A similar trailing stop exit is applied if the profit exceeds the trigger threshold.
________________________________________
Summary
In essence, this strategy works by:
• Defining entry levels based on recent local highs and lows.
• Placing pending stop orders to enter the market when those levels are breached.
• Filtering orders by time, ensuring trades are only taken during specified hours.
• Implementing a trailing stop mechanism to secure profits once the trade moves favorably.
This approach is designed to automate BTC trading based on price action and dynamic risk management, although further enhancements (like dynamic position sizing based on RiskPercent) could be added for a more complete risk management system.
Smart Grid Scalping (Pullback) Strategy[BullByte]The Smart Grid Scalping (Pullback) Strategy is a high-frequency trading strategy designed for short-term traders who seek to capitalize on market pullbacks. This strategy utilizes a dynamic ATR-based grid system to define optimal entry points, ensuring precise trade execution. It integrates volatility filtering and an RSI-based confirmation mechanism to enhance signal accuracy and reduce false entries.
This strategy is specifically optimized for scalping by dynamically adjusting trade levels based on current market conditions. The grid-based system helps capture retracement opportunities while maintaining strict trade management through predefined profit targets and trailing stop-loss mechanisms.
Key Features :
1. ATR-Based Grid System :
- Uses a 10-period ATR to dynamically calculate grid levels for entry points.
- Prevents chasing trades by ensuring price has reached key levels before executing entries.
2. No Trade Zone Protection :
- Avoids low-volatility zones where price action is indecisive.
- Ensures only high-momentum trades are executed to improve success rate.
3. RSI-Based Entry Confirmation :
- Long trades are triggered when RSI is below 30 (oversold) and price is in the lower grid zone.
- Short trades are triggered when RSI is above 70 (overbought) and price is in the upper grid zone.
4. Automated Trade Execution :
- Long Entry: Triggered when price drops below the first grid level with sufficient volatility.
- Short Entry: Triggered when price exceeds the highest grid level with sufficient volatility.
5. Take Profit & Trailing Stop :
- Profit target set at a customizable percentage (default 0.2%).
- Adaptive trailing stop mechanism using ATR to lock in profits while minimizing premature exits.
6. Visual Trade Annotations :
- Clearly labeled "LONG" and "SHORT" markers appear at trade entries for better visualization.
- Grid levels are plotted dynamically to aid decision-making.
Strategy Logic :
- The script first calculates the ATR-based grid levels and ensures price action has sufficient volatility before allowing trades.
- An additional RSI filter is used to ensure trades are taken at ideal market conditions.
- Once a trade is executed, the script implements a trailing stop and predefined take profit to maximize gains while reducing risks.
---
Disclaimer :
Risk Warning :
This strategy is provided for educational and informational purposes only. Trading involves significant risk, and past performance is not indicative of future results. Users are advised to conduct their own due diligence and risk management before using this strategy in live trading.
The developer and publisher of this script are not responsible for any financial losses incurred by the use of this strategy. Market conditions, slippage, and execution quality can affect real-world trading outcomes.
Use this script at your own discretion and always trade responsibly.
Non-Repainting Renko Emulation Strategy [PineIndicators]Introduction: The Repainting Problem in Renko Strategies
Renko charts are widely used in technical analysis for their ability to filter out market noise and emphasize price trends. Unlike traditional candlestick charts, which are based on fixed time intervals, Renko charts construct bricks only when price moves by a predefined amount. This makes them useful for trend identification while reducing small fluctuations.
However, Renko-based trading strategies often fail in live trading due to a fundamental issue: repainting .
Why Do Renko Strategies Repaint?
Most trading platforms, including TradingView, generate Renko charts retrospectively based on historical price data. This leads to the following issues:
Renko bricks can change or disappear when new data arrives.
Backtesting results do not reflect real market conditions. Strategies may appear highly profitable in backtests because historical data is recalculated with hindsight.
Live trading produces different results than backtesting. Traders cannot know in advance whether a new Renko brick will form until price moves far enough.
Objective of the Renko Emulator
This script simulates Renko behavior on a standard time-based chart without repainting. Instead of using TradingView’s built-in Renko charting, which recalculates past bricks, this approach ensures that once a Renko brick is formed, it remains unchanged .
Key benefits:
No past bricks are recalculated or removed.
Trading strategies can execute reliably without false signals.
Renko-based logic can be applied on a time-based chart.
How the Renko Emulator Works
1. Parameter Configuration & Initialization
The script defines key user inputs and variables:
brickSize : Defines the Renko brick size in price points, adjustable by the user.
renkoPrice : Stores the closing price of the last completed Renko brick.
prevRenkoPrice : Stores the price level of the previous Renko brick.
brickDir : Tracks the direction of Renko bricks (1 = up, -1 = down).
newBrick : A boolean flag that indicates whether a new Renko brick has been formed.
brickStart : Stores the bar index at which the current Renko brick started.
2. Identifying Renko Brick Formation Without Repainting
To ensure that the strategy does not repaint, Renko calculations are performed only on confirmed bars.
The script calculates the difference between the current price and the last Renko brick level.
If the absolute price difference meets or exceeds the brick size, a new Renko brick is formed.
The new Renko price level is updated based on the number of bricks that would fit within the price movement.
The direction (brickDir) is updated , and a flag ( newBrick ) is set to indicate that a new brick has been formed.
3. Visualizing Renko Bricks on a Time-Based Chart
Since TradingView does not support live Renko charts without repainting, the script uses graphical elements to draw Renko-style bricks on a standard chart.
Each time a new Renko brick forms, a colored rectangle (box) is drawn:
Green boxes → Represent bullish Renko bricks.
Red boxes → Represent bearish Renko bricks.
This allows traders to see Renko-like formations on a time-based chart, while ensuring that past bricks do not change.
Trading Strategy Implementation
Since the Renko emulator provides a stable price structure, it is possible to apply a consistent trading strategy that would otherwise fail on a traditional Renko chart.
1. Entry Conditions
A long trade is entered when:
The previous Renko brick was bearish .
The new Renko brick confirms an upward trend .
There is no existing long position .
A short trade is entered when:
The previous Renko brick was bullish .
The new Renko brick confirms a downward trend .
There is no existing short position .
2. Exit Conditions
Trades are closed when a trend reversal is detected:
Long trades are closed when a new bearish brick forms.
Short trades are closed when a new bullish brick forms.
Key Characteristics of This Approach
1. No Historical Recalculation
Once a Renko brick forms, it remains fixed and does not change.
Past price action does not shift based on future data.
2. Trading Strategies Operate Consistently
Since the Renko structure is stable, strategies can execute without unexpected changes in signals.
Live trading results align more closely with backtesting performance.
3. Allows Renko Analysis Without Switching Chart Types
Traders can apply Renko logic without leaving a standard time-based chart.
This enables integration with indicators that normally cannot be used on traditional Renko charts.
Considerations When Using This Strategy
Trade execution may be delayed compared to standard Renko charts. Since new bricks are only confirmed on closed bars, entries may occur slightly later.
Brick size selection is important. A smaller brickSize results in more frequent trades, while a larger brickSize reduces signals.
Conclusion
This Renko Emulation Strategy provides a method for using Renko-based trading strategies on a time-based chart without repainting. By ensuring that bricks do not change once formed, it allows traders to use stable Renko logic while avoiding the issues associated with traditional Renko charts.
This approach enables accurate backtesting and reliable live execution, making it suitable for trend-following and swing trading strategies that rely on Renko price action.
Bollinger Bands by Abu ElyasBollinger Bands with Adjustable Stop Loss (Long-Only)
This strategy uses a Bollinger Band breakout approach to enter long positions and incorporates an adjustable stop loss for risk management.
Below is an overview of the logic, parameters, and usage instructions.
1. Bollinger Bands Logic
Basis (Middle Band): A moving average (type selectable by the user) of the chosen source, typically the closing price.
Upper Band: The basis plus a specified number of standard deviations (user-defined multiplier).
Lower Band: The basis minus the same number of standard deviations.
2. Entry Triggers
The strategy enters a long position when the close price rises above the upper Bollinger Band , suggesting a potential bullish breakout.
This logic is only applied within a user-specified date range (adjustable in the strategy’s inputs).
3. Exit Triggers
1. Bollinger Band Exit:
If the close price drops below the lower Bollinger Band , the strategy closes the position, indicating a loss of bullish momentum.
2. Stop Loss Exit:
A default 8% stop loss is set, which automatically exits the trade if the close falls 8% below the entry price.
This stop-loss percentage is adjustable from the strategy’s settings, allowing users to tailor risk based on their preferences.
3. Date Range:
If the current bar is outside of the specified start/end dates, the strategy will also exit any open positions.
4. Position Sizing & Other Settings
1- Position Size:
By default, the script uses 100% of account equity for each trade.
2- Commissions & Slippage:
Commission is set to 0%, and slippage is set to 3 ticks.
3- Timeframe Handling:
You can select a custom timeframe or leave it blank to use the chart’s timeframe.
5. Customization
1. Bollinger Bands Parameters:
Length of the moving average, type of moving average (SMA, EMA, etc.), and the standard deviation multiplier can be adjusted.
2. Stop Loss (%)
The default stop loss of 8% can be changed in the script’s input settings to any percentage you prefer.
3. Date Filter:
Modify the start/end dates to control the historical period over which the strategy executes trades.
6. Notes & Best Practices
1- No Short Trades:
This is a long‐only strategy. It will either be in a long position or flat (no open position).
2- Risk Management:
An 8% stop loss may or may not align with your personal risk tolerance. Always adjust according to market conditions and your own trading style.
3- Market Gaps & Volatility:
In highly volatile markets, slippage or gaps can cause the actual exit price to be worse than the intended stop-loss level.
4- Test Thoroughly:
Backtest on different timeframes and market conditions. No single strategy works in all scenarios.
7. Disclaimer
Educational Use Only: This script is for informational and illustrative purposes and should not be considered financial advice.
No Guarantee of Profit: Past performance does not guarantee future results. Trading involves substantial risk, and it is possible to lose more than your initial investment.
Consult a Professional: Always consult a qualified financial advisor before making investment decisions.
Use this script as a foundation and personalize it based on your trading style, tolerance for drawdowns, and market conditions.
FVG Breakout Lite by tradingbauhausExplanation of "FVG Breakout Lite by tradingbauhaus"
This script is a trading strategy built for TradingView that helps you spot and trade "Fair Value Gaps" (FVGs)—price areas where the market moved quickly, leaving a gap that might act as support or resistance later. It’s designed to catch breakout opportunities when the price moves strongly in one direction, with extra filters to make trades more reliable. Here’s how it works and how you can use it:
What It Does
1. Finds Fair Value Gaps (FVGs):
A "Bullish FVG" happens when the price jumps up quickly, leaving a gap below where it didn’t trade much (e.g., today’s low is higher than the high from two bars ago).
A "Bearish FVG" is the opposite: the price drops fast, leaving a gap above (e.g., today’s high is lower than the low from two bars ago).
The script draws colored boxes on your chart to show these gaps: green for bullish, red for bearish.
2. Spots Breakouts:
It looks for "strong" FVGs by comparing them to a trend (based on the highest highs and lowest lows over a set period).
If a bullish gap forms above the recent highs, or a bearish gap below the recent lows, it’s marked as a breakout opportunity.
3. Adds a Volume Check:
Trades only happen if the market’s volume is higher than usual (e.g., 1.2x the average volume over the last 20 bars). This helps ensure the breakout has real momentum behind it.
4. Trades Automatically:
Long Trades (Buy): If a bullish breakout FVG forms and volume is high, it buys at the current price.
Short Trades (Sell): If a bearish breakout FVG forms with high volume, it sells short.
Each trade comes with a stop loss (to limit losses) and a take profit (to lock in gains), both adjustable by you.
5. Shows Mitigation Lines (Optional):
If you turn on "Display Mitigation Zones," it draws lines at the edge of each breakout FVG. These lines show where the price might return to "fill" the gap later, helping you see key levels.
6. Includes Webull Costs:
The script factors in real trading fees from Webull, like tiny SEC and FINRA fees for selling, and a daily margin cost if you’re borrowing money to trade. These don’t show up on the chart but affect the strategy’s performance in backtesting.
How to Use It
1. Add to Your Chart:
Copy the script into TradingView’s Pine Editor, click "Add to Chart," and it’ll start drawing FVGs and running the strategy.
2. Customize Settings:
Trend Period (Default: 25): How many bars it looks back to define the trend. Longer periods mean fewer but stronger signals.
Volume Lookback (Default: 20) & Volume Threshold (Default: 1.2): Adjust how it measures "high volume." Increase the threshold for stricter trades.
Stop Loss % (Default: 1.5%) & Take Profit % (Default: 3%): Set how much you’re willing to lose or aim to gain per trade.
Margin Rate % (Default: 8.74%): Webull’s rate for borrowing money—lower it if your account qualifies for a better rate.
Display Mitigation Zones (Default: On): Toggle this to see or hide the gap lines.
Colors: Change the green (bullish) and red (bearish) shades to suit your chart.
3. Backtest It:
Go to the "Strategy Tester" tab in TradingView to see how it performs on past data. It’ll show trades, profits, losses, and Webull fees included.
4. Watch It Work:
Green boxes mean bullish FVGs; red boxes mean bearish FVGs. If volume spikes and the price breaks out, you’ll see trades happen automatically.
What to Expect
Visuals: You’ll see colored boxes for FVGs and optional lines showing where they start. These help you spot key price zones even if you’re not trading.
Trades: It’s selective—only trades when FVGs align with a breakout and volume confirms it. Expect fewer trades but with higher potential.
Risk: The stop loss keeps losses in check, while the take profit aims for a 2:1 reward-to-risk ratio by default (3% gain vs. 1.5% loss).
Costs: Webull’s fees are small but baked into the results, so you’re seeing a realistic picture of profits.
Tips for Users
Test it on a small timeframe (like 5-minute charts) for day trading or a larger one (like daily) for swing trading.
Play with the volume threshold—if you get too few trades, lower it (e.g., 1.1); if too many, raise it (e.g., 1.5).
Watch how price reacts to the mitigation lines—they’re often support or resistance zones traders target.
This strategy is lightweight, focused, and built for traders who like breakouts with a bit of confirmation. It’s not foolproof (no strategy is!), but it gives you a clear way to trade FVGs with some smart filters.
Flux Charts - S&D Automation💎 GENERAL OVERVIEW
The MTF Supply & Demand Zones (S&D) Automation is a powerful and versatile tool designed to help traders rigorously test their trading strategies against historical market data. With various advanced settings, traders can fine-tune their strategies, assess performance, and identify key improvements before deploying in live trading environments. This tool offers a wide range of configurable settings, explained within this write-up.
Features of the new S&D Automation:
Step By Step : Configure your strategy step by step, which will allow you to have OR & AND logic in your strategies.
Highly Configurable : Offers multiple parameters for fine-tuning trade entry and exit conditions.
Multi-Timeframe Analysis : Allows traders to analyze multiple timeframes simultaneously for enhanced accuracy.
Provides advanced stop-loss, take-profit, and break-even settings.
Incorporates Supply & Demand Zone conditions, with settings like Sensitivity, Zone Invalidation, Minimum Zone Width & Minimum Zone Length settings for refined strategy execution.
🚩 UNIQUENESS
The S&D Automation stands out from conventional backtesting tools due to its unparalleled flexibility, precision, and advanced trading logic integration. Key factors that make it unique include:
✅ Comprehensive Strategy Customization – Unlike traditional backtesters that offer basic entry and exit conditions, S&D Automation provides a highly detailed parameter set, allowing traders to fine-tune their strategies with precision.
✅ Multi-Timeframe Supply & Demand Zones – This is the first-ever tool that allows traders to backtest Supply & Demand zones on multiple timeframes.
✅ Customizable Take-Profit Conditions – Offers various methods to set take-profit exits, including using core features from Supply & Demand Zones, and fixed exits like ATR, % change or price change, enabling traders to tailor their exit strategies to specific market behaviors.
✅ Customizable Stop-Loss Conditions – Provides several ways to set up stop losses, including using concepts from Supply & Demand Zones and trailing stops or fixed exits like ATR, % change or price change, allowing for dynamic risk management tailored to individual strategies.
✅ Integration of External Indicators – Allows the inclusion of other indicators or data sources from TradingView for creating strategy conditions, enabling traders to enhance their strategies with additional insights and data points.
By integrating these advanced features, S&D Automation ensures that traders can rigorously test and optimize their strategies with great accuracy and efficiency.
📌 HOW DOES IT WORK ?
The first setting you will want to set it the pyramiding setting. This setting controls the number of simultaneous trades in the same direction allowed in the strategy. For example, if you set it to 1, only one trade can be active in any time, and the second trade will not be entered unless the first one is exited. If it is set to 2, the script will handle both of them at the same time. Note that you should enter the same value to this pyramiding setting, and the pyramiding setting in the "Properties" tab of the script for this to work.
You can enable and set a backtesting window that will limit the entries to between the start date & end date.
Then, you can enter your desired settings for Supply & Demand Zones. You can also enable and set up to 3 timeframes, which you can use later on when customizing your strategies enter / exit conditions.
Entry Conditions
From the "Long Conditions" or the "Short Conditions" groups, you can set your position entry conditions. For settings like "initial capital" or "order size", you can open the "Properties" tab, where these are handled.
The S&D Automation can use the following conditions for entry conditions :
1. Demand Zone
Detection: Triggered when a Demand Zone forms or is detected
Retest: Triggered when price retests a Demand Zone. A retest is confirmed when a candle enters a Demand Zone and closes outside of it.
2nd Retest: Triggered when price retests a Demand Zone for the second time. A retest is confirmed when a candle enters a Demand Zone and closes outside of it.
3rd Retest: Triggered when price retests a Demand Zone for the third time. A retest is confirmed when a candle enters a Demand Zone and closes outside of it.
Retracement: Triggered when price touches a Demand Zone
Break: Triggered when a Demand Zone is invalidated by candle close or wick, depending on the user's input.
2. Supply Zone
Detection: Triggered when a Supply Zone forms or is detected
Retest: Triggered when price retests a Supply Zone. A retest is confirmed when a candle enters a Supply Zone and closes outside of it.
2nd Retest: Triggered when price retests a Supply Zone for the second time. A retest is confirmed when a candle enters a Supply Zone and closes outside of it.
3rd Retest: Triggered when price retests a Supply Zone for the third time. A retest is confirmed when a candle enters a Supply Zone and closes outside of it.
Retracement: Triggered when price touches a Supply Zone
Break: Triggered when a Supply Zone is invalidated by candle close or wick, depending on the user's input.
3. Any Zone
Detection: Triggered when any Supply or Demand Zone forms or is detected
Retest: Triggered when price retests any Supply or Demand Zone. A retest is confirmed when a candle enters any Supply or Demand Zone and closes outside of it.
2nd Retest: Triggered when price retests any Supply or Demand Zone for the second time. A retest is confirmed when a candle enters any Supply or Demand Zone and closes outside of it.
3rd Retest: Triggered when price retests any Supply or Demand Zone for the third time. A retest is confirmed when a candle enters any Supply or Demand Zone and closes outside of it.
Retracement: Triggered when price touches any Supply or Demand Zone
Break: Triggered when any Supply or Demand Zone is invalidated by candle close or wick, depending on the user's input.
🕒 TIMEFRAME CONDITIONS
The S&D Automation supports Multi-Timeframe (MTF) features, just like the Supply & Demand indicator. When setting an entry condition, you can also choose the timeframe.
To set up MTF conditions, navigate to the 'Timeframes' section in the settings, select your desired timeframes, and enable them. You can choose up to three timeframes.
Once you've selected your timeframes, you can use them in your strategy. When setting long and short entry/exit conditions, you can choose from Timeframe 1, Timeframe 2, or Timeframe 3.
External Conditions
Users can use external indicators on the chart to set entry conditions.
The second dropdown in the external condition settings allows you to choose a conditional operator to compare external outputs. Available options include:
Less Than or Equal To: <=
Less Than: <
Equal To: =
Greater Than: >
Greater Than or Equal To: >=
The position entry conditions work like this ;
Each side has 5 S&D Zone conditions and 1 Source condition. Each condition can be enabled or disabled using the checkbox on the left side of them.
The next selection is the alert type, which you can select between "Detection", "Retest", "Retracement" or "Break".
You can select which timeframe this condition should work on from Timeframe 1, 2, or 3. If you select "Any Timeframe", the condition will work for all timeframes.
Lastly select the step of this condition from 1 to 6.
The Source Condition
The last condition on each side is a source condition that is different from the others. Using this condition, you can create your own logic using other indicators' outputs on your chart. For example, suppose that you have an EMA indicator in your chart. You can have the source condition to something like "EMA > high".
The Step System
Each condition has a step number, and conditions are in topological order based on them.
The conditions are executed step by step. This means the condition with step 2 cannot be executed before the condition with step 1 is executed.
Conditions with the same step numbers have "OR" logic. This means that if you have 2 conditions with step 3, the condition with step 4 can trigger after only one of the step 3 conditions is executed.
➕ OTHER ENTRY FEATURES
The S&D Automation allows traders to choose when to execute trades and when not to execute trades.
1. Only Take Trades
This setting lets users specify the time period when their strategy can open or execute trades.
2. Don't Take Trades
This setting lets users specify time periods when their strategy can't open or execute trades.
↩️ EXIT CONDITIONS
1. Exit on Opposite Signal
When enabled, a long position will close when short entry conditions are met, and a short position will close when long entry conditions are met.
2. Exit on Session End
When enabled, positions will be closed at the end of the trading session.
📈 TAKE PROFIT CONDITIONS
There are several methods available for setting take profit exits and conditions.
1. Entry Condition TP
Users can use entry conditions as triggers for take-profit exits. This setting can be found under the long and short exit conditions.
2. Fixed TP
Users can set a fixed TP for exits. This setting can be found under the long and short exit conditions. Users can choose between the following:
Price: This method triggers a TP exit when price reaches a specified level. For example, if you set the Price TP to 10 and buy NASDAQ:TSLA at $190, the trade will automatically exit when the price reaches $200 ($190 + $10).
Ticks: This method triggers a TP exit when price moves a specified number of ticks.
Percentage (%): This method triggers a TP exit when price moves a specified percentage.
ATR: This method triggers a TP exit based on a specified multiple of the Average True Range (ATR).
📉 STOP LOSS CONDITIONS
There are several methods available for setting stop-loss exits and conditions.
1. Entry Condition SL
Users can use entry conditions as triggers for stop-loss exits. This setting can be found under the long and short exit conditions.
2. Fixed SL
Users can set a fixed SL for exits. This setting can be found under the long and short exit conditions. Users can choose between the following:
Price: This method triggers a SL exit when price reaches a specified level. For example, if you set the Price SL to 10 and buy NASDAQ:TSLA at $200, the trade will automatically exit when the price reaches $190 ($200 - $10).
Ticks: This method triggers a SL exit when price moves a specified number of ticks.
Percentage (%): This method triggers a SL exit when price moves a specified percentage.
ATR: This method triggers a SL exit based on a specified multiple of the Average True Range (ATR).
3. Trailing Stop
An explanation & example for the trailing stop feature is present on the write-up within the next section.
Exit conditions have the same logic of constructing conditions like the entry ones. You can construct a Take-Profit Condition & a Stop-Loss Condition. Note that the Take-Profit condition will only work if the position is in profit, regardless of if it's triggered or not. The same applies for the Stop-Loss condition, meaning that it will only work if the position is in loss.
You can also set a Fixed TP & Fixed SL based on the price movement after the position is entered. You have options like "Price", "Ticks", "%", or "Average True Range". For example, you can set a Fixed TP like "5%", and the position will be entered once it moves 5% up in a long position.
Trailing Stop
For the Fixed SL, you also have a "Trailing" stop option, for which you can set its activation level as well. The Trailing stop activation level and its value are expressed in ticks. Check this scenario for an example :
We have a ticker with a tick value of $1. Our Trailing Stop is set to 10 ticks, and the activation level is set to 30 ticks.
We buy 1 contract when the price is $100.
When the price becomes $110, we are in $10 (10 ticks) profit and the trailing stop is now activated.
The current price our stop's on is $110 - $30 (30 ticks), which is the level of $80.
The trailing stop will only move if the price moves up the highest high the price has been after we entered the position.
Let's suppose that price moves up $40 right after our trailing stop is activated. The price will now be $150, and our trailing stop will sit on $150 - $30 (30 ticks) = $120.
If the price is down the $120 level, our stop loss will be triggered.
There is also a "Hard SL" option designed for a backup stop-loss when trailing stops are enabled. You can enable & set this option and if the price goes down before our trailing stop even activates, the position will be exited.
You can also move stop-loss to the break-even (entry price of the position) after a certain profit is achieved using the last setting of the exit conditions. Note that for this to work, you must have a Fixed SL set-up.
➕ OTHER EXIT FEATURES
1. Move Stop Loss to Breakeven
This setting allows the strategy to automatically move the SL to Breakeven (BE) when the position is in profit by a certain amount. Users can choose between the following:
Price: This method moves the SL to BE when price reaches a specified level.
Ticks: This method moves the SL to BE when price moves a specified number of ticks.
Percentage (%): This method moves the SL to BE when price moves a specified percentage.
ATR: This method moves the SL to BE when price moves a specified multiple of the Average True Range (ATR).
Example Entry Scenario
To give an example , check this scenario; out conditions are :
LONG CONDITIONS
Demand Zone Detection, Step 1
Supply Zone Retest, Step 2
Demand Zone Break, Step 2
open > close, Step 3
First, the strategy needs to detect a Demand Zone Detection in order to start working.
After it's detected, now it's looking for either a Supply Zone Retest, or a Demand Zone Break to proceed to the next step, the reason for this is that they both have the same step number.
After one of them is detected, the strategy will consistently check candlesticks for the condition open > close. If a bullish candlestick occurs, a long position will be entered.
⏰ ALERTS
This indicator uses TradingView's strategy alert system. All entries and exits will be sent as an alert if configured. It's possible to further customize these alerts to your liking. For more information check TradingView's strategy alert customization page : www.tradingview.com
⚙️ SETTINGS
1. Backtesting Settings
Pyramiding: Controls the number of simultaneous trades allowed in the strategy. This setting must have the same value that is entered on the script's properties tab on the settings pane.
Enable Custom Backtesting Period: Restricts backtesting to a specific date range.
Start & End Time Configuration: Define precise start and end dates for historical analysis.
2. General Configuration
Detection Method: There are two detection methods you can choose from for identifying Supply & Demand Zones. Both methods aim to identify key areas where price is likely to react, but they do so using different approaches. Traders can choose the method that aligns with their trading style and time horizon.
Sensitivity: The Sensitivity setting allows traders to adjust how aggressively the script identifies supply and demand zones when using the Momentum Detection Method. This setting directly impacts the threshold for detecting zones when using the momentum detection method.
Zone Invalidation: The Zone Invalidation setting determines how supply and demand zones are invalidated.
Wick -> A zone is invalidated if a candle’s wick goes below a demand zone or above a supply zone.
Close -> A zone is invalidated if a candle closes below a demand zone or above a supply zone.
Zone Visibility Range: The Zone Visibility Range setting controls how far from the current price supply and demand zones are displayed on the chart. It helps traders focus on relevant zones while avoiding clutter from distant or less impactful areas.
Minimum Zone Width: The Minimum Zone Width setting defines the smallest size a supply or demand zone must have to be displayed on the chart. It uses the Average True Range (ATR) as a reference to ensure zones are proportionate to current market volatility.
Minimum Zone Length: The Minimum Zone Length setting determines the minimum number of bars a supply or demand zone must span to be displayed on the chart. This setting helps filter out short-lived or insignificant zones, ensuring only meaningful areas of supply or demand are highlighted.
3. Multi-Timeframe Analysis
Enable Up to Three Timeframes: Select and analyze trades across multiple timeframes.
4. Entry Conditions for Long & Short Trades
Multiple Conditions (1-6): Configure up to six independent conditions per trade direction.
Condition Types: Options include Detection, Retest, 2nd Retest, 3rd Retest, Retracement, and Break.
Timeframe Specification: Choose between "Any Timeframe", "Timeframe 1", "Timeframe 2", or "Timeframe 3".
Trade Execution Filters: Restrict trades within specific trading sessions.
5. Exit Conditions for Long & Short Trades
Exit on Opposite Signal: Automatically exit trades upon opposite trade conditions.
Exit on Session End: Closes all positions at the end of the trading session.
Multiple Take-Profit (TP) and Stop-Loss (SL) Configurations:
TP/SL based on % move, ATR, Ticks, or Fixed Price.
Hard SL option for additional risk control.
Move SL to BE (Break Even) after a certain profit threshold.
Moving Average Crossover StrategyCertainly! Below is an example of a professional trading strategy implemented in Pine Script for TradingView. This strategy is a simple moving average crossover strategy, which is a common approach used by many traders. It uses two moving averages (a short-term and a long-term) to generate buy and sell signals.
Input Parameters:
shortLength: The length of the short-term moving average.
longLength: The length of the long-term moving average.
Moving Averages:
shortMA: The short-term simple moving average (SMA).
longMA: The long-term simple moving average (SMA).
Conditions:
longCondition: A buy signal is generated when the short-term MA crosses above the long-term MA.
shortCondition: A sell signal is generated when the short-term MA crosses below the long-term MA.
Trade Execution:
The strategy enters a long position when the longCondition is met.
The strategy enters a short position when the shortCondition is met.
Plotting:
The moving averages are plotted on the chart.
Buy and sell signals are plotted as labels on the chart.
How to Use:
Copy the script into TradingView's Pine Script editor.
Adjust the shortLength and longLength parameters to fit your trading style.
Add the script to your chart and apply it to your desired timeframe.
Backtest the strategy to see how it performs on historical data.
This is a basic example, and professional traders often enhance such strategies with additional filters, risk management rules, and other indicators to improve performance.
Forex Hammer and Hanging Man StrategyThe strategy is based on two key candlestick chart patterns: Hammer and Hanging Man. These chart patterns are widely used in technical analysis to identify potential reversal points in the market. Their relevance in the Forex market, known for its high liquidity and volatile price movements, is particularly pronounced. Both patterns provide insights into market sentiment and trader psychology, which are critical in currency trading, where short-term volatility plays a significant role.
1. Hammer:
• Typically occurs after a downtrend.
• Signals a potential trend reversal to the upside.
• A Hammer has:
• A small body (close and open are close to each other).
• A long lower shadow, at least twice as long as the body.
• No or a very short upper shadow.
2. Hanging Man:
• Typically occurs after an uptrend.
• Signals a potential reversal to the downside.
• A Hanging Man has:
• A small body, similar to the Hammer.
• A long lower shadow, at least twice as long as the body.
• A small or no upper shadow.
These patterns are a manifestation of market psychology, specifically the tug-of-war between buyers and sellers. The Hammer reflects a situation where sellers tried to push the price down but were overpowered by buyers, while the Hanging Man shows that buyers failed to maintain the upward movement, and sellers could take control.
Relevance of Chart Patterns in Forex
In the Forex market, chart patterns are vital tools because they offer insights into price action and market sentiment. Since Forex trading often involves large volumes of trades, chart patterns like the Hammer and Hanging Man are important for recognizing potential shifts in market momentum. These patterns are a part of technical analysis, which aims to forecast future price movements based on historical data, relying on the psychology of market participants.
Scientific Literature on the Relevance of Candlestick Patterns
1. Behavioral Finance and Candlestick Patterns:
Research on behavioral finance supports the idea that candlestick patterns, such as the Hammer and Hanging Man, are relevant because they reflect shifts in trader psychology and sentiment. According to Lo, Mamaysky, and Wang (2000), patterns like these could be seen as representations of collective investor behavior, influenced by overreaction, optimism, or pessimism, and can often signal reversals in market trends.
2. Statistical Validation of Chart Patterns:
Studies by Brock, Lakonishok, and LeBaron (1992) explored the profitability of technical analysis strategies, including candlestick patterns, and found evidence that certain patterns, such as the Hammer, can have predictive value in financial markets. While their study primarily focused on stock markets, their findings are generally applicable to the Forex market as well.
3. Market Efficiency and Candlestick Patterns:
The efficient market hypothesis (EMH) posits that all available information is reflected in asset prices, but some studies suggest that markets may not always be perfectly efficient, allowing for profitable exploitation of certain chart patterns. For instance, Jegadeesh and Titman (1993) found that momentum strategies, which often rely on price patterns and trends, could generate significant returns, suggesting that patterns like the Hammer or Hanging Man may provide a slight edge, particularly in short-term Forex trading.
Testing the Strategy in Forex Using the Provided Script
The provided script allows traders to test and evaluate the Hammer and Hanging Man patterns in Forex trading by entering positions when these patterns appear and holding the position for a specified number of periods. This strategy can be tested to assess its performance across different currency pairs and timeframes.
1. Testing on Different Timeframes:
• The effectiveness of candlestick patterns can vary across different timeframes, as market dynamics change with the level of detail in each timeframe. Shorter timeframes may provide more frequent signals, but with higher noise, while longer timeframes may produce more reliable signals, but with fewer opportunities. This multi-timeframe analysis could be an area to explore to enhance the strategy’s robustness.
2. Exit Strategies:
• The script incorporates an exit strategy where positions are closed after holding them for a specified number of periods. This is useful for testing how long the reversal patterns typically take to play out and when the optimal exit occurs for maximum profitability. It can also help to adjust the exit logic based on real-time market behavior.
Conclusion
The Hammer and Hanging Man patterns are widely recognized in technical analysis as potential reversal signals, and their application in Forex trading is valuable due to the market’s high volatility and liquidity. This strategy leverages these candlestick patterns to enter and exit trades based on shifts in market sentiment and psychology. Testing and optimization, as offered by the script, can help refine the strategy and improve its effectiveness.
For further refinement, it could be valuable to consider combining candlestick patterns with other technical indicators or using multi-timeframe analysis to confirm patterns and increase the probability of successful trades.
References:
• Lo, A. W., Mamaysky, H., & Wang, J. (2000). Foundations of Technical Analysis: Computational Algorithms, Statistical Inference, and Empirical Implementation. The Journal of Finance, 55(4), 1705-1770.
• Brock, W., Lakonishok, J., & LeBaron, B. (1992). Simple Technical Trading Rules and the Stochastic Properties of Stock Returns. The Journal of Finance, 47(5), 1731-1764.
• Jegadeesh, N., & Titman, S. (1993). Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency. The Journal of Finance, 48(1), 65-91.
This provides a theoretical basis for the use of candlestick patterns in trading, supported by academic literature and research on market psychology and efficiency.